import java.io.*;

/**
 * Created with IntelliJ IDEA.
 * Description:
 * User: 87111
 * Date: 2025-11-11
 * Time: 20:24
 */
/*
        File file = new File("./test.txt");
        try {
            boolean n = file.createNewFile();
        } catch (IOException e) {
            throw new RuntimeException(e);
        }
 */
/*
//        InputStream inputStream = null;
//        try {
//            inputStream = new FileInputStream("./text.txt");
//        }finally {
//            inputStream.close();
//        }
     */
public class Demo2 {
    public static void main(String[] args) throws IOException {
        try(InputStream inputStream = new FileInputStream("./test.txt")) {
            //读文件
            while (true) {
//                //每次读取一个字节
//                int data = inputStream.read();
//                if (data == -1) {
//                    //读取完毕
//                    break;
//                }
//                System.out.printf("0x%x\n", data);

                //每次读取多个字节
                byte[] bytes = new byte[3];//这里的大小是自己设定的
                //n是实际读取到的数量
                //这个数组能读多少就装多少，一次读不完就多读几次
                int n = inputStream.read(bytes);
                System.out.println("n = " + n);
                if(n == -1) {
                    //读完了
                    break;
                }
                for (int i = 0; i < n; i++) {
                    System.out.printf("0x%x\n",bytes[i]);
                }

//                //每次读取多个字节，从指定位置开始放
//                byte[] byte1 = new byte[3];
//                //表示从下标为1的位置开始读，读2个字节
//                int n1 = inputStream.read(byte1,1,2);
//                System.out.println("n = " + n);
//                if(n1 == -1) {
//                    //读完了
//                    break;
//                }
//                for (int i = 0; i < n1; i++) {
//                    System.out.printf("0x%x\n",byte1[i]);
//                }
           }
        }

    }
}
